/*
	Yelo: Open Sauce SDK
		Halo 1 (CE) Edition

	See license\OpenSauce\Halo1_CE for specific license information
*/
static s_render_state_manager g_render_state_managers[] =
{
	{
#ifdef API_DEBUG
		"pp_render_stage_pre_blur",
#endif
		{
			{ RENDER_STATE(D3DRS_BLENDOP),				0, D3DBLENDOP_ADD},
			{ RENDER_STATE(D3DRS_FILLMODE),				0, D3DFILL_SOLID},
			{ RENDER_STATE(D3DRS_SRCBLEND),				0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_DESTBLEND),			0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_ZENABLE),				0, false},
			{ RENDER_STATE(D3DRS_STENCILENABLE),		0, false},
			{ RENDER_STATE(D3DRS_COLORWRITEENABLE),		0, D3DCOLORWRITEENABLE_RED | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_BLUE | D3DCOLORWRITEENABLE_ALPHA},
			{ RENDER_STATE(D3DRS_ALPHABLENDENABLE),		0, false},
			{ RENDER_STATE(D3DRS_ALPHATESTENABLE),		0, false},
			{ RENDER_STATE(D3DRS_FOGENABLE),			0, false},
			{ RENDER_STATE(D3DRS_FORCE_DWORD),			0, NONE},
		}
	},
	{
#ifdef API_DEBUG
		"pp_render_stage_pre_alpha_blended",
#endif
		{
			{ RENDER_STATE(D3DRS_BLENDOP),				0, D3DBLENDOP_ADD},
			{ RENDER_STATE(D3DRS_FILLMODE),				0, D3DFILL_SOLID},
			{ RENDER_STATE(D3DRS_SRCBLEND),				0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_DESTBLEND),			0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_ZENABLE),				0, false},
			{ RENDER_STATE(D3DRS_STENCILENABLE),		0, false},
			{ RENDER_STATE(D3DRS_COLORWRITEENABLE),		0, D3DCOLORWRITEENABLE_RED | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_BLUE | D3DCOLORWRITEENABLE_ALPHA},
			{ RENDER_STATE(D3DRS_ALPHABLENDENABLE),		0, false},
			{ RENDER_STATE(D3DRS_ALPHATESTENABLE),		0, false},
			{ RENDER_STATE(D3DRS_FOGENABLE),			0, false},
			{ RENDER_STATE(D3DRS_FORCE_DWORD), 0, NONE},
		}
	},
	{
#ifdef API_DEBUG
		"pp_render_stage_pre_hud",
#endif
		{
			{ RENDER_STATE(D3DRS_BLENDOP),				0, D3DBLENDOP_ADD},
			{ RENDER_STATE(D3DRS_FILLMODE),				0, D3DFILL_SOLID},
			{ RENDER_STATE(D3DRS_SRCBLEND),				0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_DESTBLEND),			0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_ZENABLE),				0, false},
			{ RENDER_STATE(D3DRS_STENCILENABLE),		0, false},
			{ RENDER_STATE(D3DRS_COLORWRITEENABLE),		0, D3DCOLORWRITEENABLE_RED | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_BLUE | D3DCOLORWRITEENABLE_ALPHA},
			{ RENDER_STATE(D3DRS_ALPHABLENDENABLE),		0, false},
			{ RENDER_STATE(D3DRS_FORCE_DWORD), 0, NONE},
		}
	},
	{
#ifdef API_DEBUG
		"pp_render_stage_pre_menu",
#endif
		{
			{ RENDER_STATE(D3DRS_BLENDOP),				0, D3DBLENDOP_ADD},
			{ RENDER_STATE(D3DRS_FILLMODE),				0, D3DFILL_SOLID},
			{ RENDER_STATE(D3DRS_CULLMODE),				0, D3DCULL_CCW},
			{ RENDER_STATE(D3DRS_SRCBLEND),				0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_DESTBLEND),			0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_ZENABLE),				0, false},
			{ RENDER_STATE(D3DRS_STENCILENABLE),		0, false},
			{ RENDER_STATE(D3DRS_COLORWRITEENABLE),		0, D3DCOLORWRITEENABLE_RED | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_BLUE | D3DCOLORWRITEENABLE_ALPHA},
			{ RENDER_STATE(D3DRS_ALPHABLENDENABLE),		0, false},
			{ RENDER_STATE(D3DRS_ALPHATESTENABLE),		0, false},
			{ RENDER_STATE(D3DRS_FORCE_DWORD), 0, NONE},
		}
	},
	{
#ifdef API_DEBUG
		"pp_render_stage_post_menu",
#endif
		{
			{ RENDER_STATE(D3DRS_BLENDOP),				0, D3DBLENDOP_ADD},
			{ RENDER_STATE(D3DRS_FILLMODE),				0, D3DFILL_SOLID},
			{ RENDER_STATE(D3DRS_CULLMODE),				0, D3DCULL_CCW},
			{ RENDER_STATE(D3DRS_SRCBLEND),				0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_DESTBLEND),			0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_ZENABLE),				0, false},
			{ RENDER_STATE(D3DRS_STENCILENABLE),		0, false},
			{ RENDER_STATE(D3DRS_COLORWRITEENABLE),		0, D3DCOLORWRITEENABLE_RED | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_BLUE | D3DCOLORWRITEENABLE_ALPHA},
			{ RENDER_STATE(D3DRS_ALPHABLENDENABLE),		0, false},
			{ RENDER_STATE(D3DRS_ALPHATESTENABLE),		0, false},
			{ RENDER_STATE(D3DRS_FORCE_DWORD), 0, NONE},
		}
	},
	{
#ifdef API_DEBUG
		"pp_render_stage_blur",
#endif
		{
			{ RENDER_STATE(D3DRS_BLENDOP),				0, D3DBLENDOP_ADD},
			{ RENDER_STATE(D3DRS_FILLMODE),				0, D3DFILL_SOLID},
			{ RENDER_STATE(D3DRS_SRCBLEND),				0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_DESTBLEND),			0, D3DBLEND_ONE},
			{ RENDER_STATE(D3DRS_ZENABLE),				0, false},
			{ RENDER_STATE(D3DRS_STENCILENABLE),		0, false},
			{ RENDER_STATE(D3DRS_COLORWRITEENABLE),		0, D3DCOLORWRITEENABLE_RED | D3DCOLORWRITEENABLE_GREEN | D3DCOLORWRITEENABLE_BLUE | D3DCOLORWRITEENABLE_ALPHA},
			{ RENDER_STATE(D3DRS_ALPHABLENDENABLE),		0, false},
			{ RENDER_STATE(D3DRS_ALPHATESTENABLE),		0, false},
			{ RENDER_STATE(D3DRS_FOGENABLE),			0, false},
			{ RENDER_STATE(D3DRS_DEPTHBIAS),			0, 0},
			{ RENDER_STATE(D3DRS_SLOPESCALEDEPTHBIAS),	0, 0},
			{ RENDER_STATE(D3DRS_FORCE_DWORD), 0, NONE},
		}
	},
};